package org.ch00.test02;

/**
 * 第一：定义类
 *  1.成员变量
 *  2.成员方法
 * @author ZQX
 * @date 2025-02-28
 */
public class Phone {
    /**
     * 品牌
     */
    private String brand;

    /**
     * 价格
     */
    private double price;

    /**
     * 名称
     */
    private String name;

    /**
     * 联系人列表
     */
    private String[] userList;

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String[] getUserList() {
        return userList;
    }

    public void setUserList(String[] userList) {
        this.userList = userList;
    }

    /**
     * 上网
     */
    public void goToNet() {
        System.out.println("上网...");
    }

    /**
     * 给某个联系人发送短信
     * 如果联系人在手机的联系人列中，则输出：给 Xxx 发送信息，内容为：Xxxx；
     * 如果不存在，则输出：给 匿名用户 发送信息，内容为：Xxxx；
     *
     * @param username 联系人
     * @param content 内容
     */
    public void sendMessage(String username, String content) {
        boolean flag = false ;

        callInner() ;

        for (String name : userList) {
            if(username!=null && username.equals(name)) {
                System.out.println("给 " + username + " 发送信息，内容为：" + content);
                flag = true ;
                break;
            }
        }

        if(!flag) {
            System.out.println("给 匿名用户 发送信息，内容为：" + content);
        }
    }

    /**
     * 注意：当方法只服务于当前类时，方法应该声明为 private
     */
    private void callInner() {
        System.out.println("调用手机的内部功能：通讯设备硬件、协议...");
    }
}
